package com.wzdigit.wms.raw.client.response.report;

import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.format.DateTimeFormat;
import com.alibaba.excel.annotation.write.style.ColumnWidth;
import com.alibaba.excel.annotation.write.style.HeadRowHeight;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.wzdigit.wms.basic.converter.report.PoHeaderStatusConverter;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;

/**
 * 
 * 采购订单报表主档--输出
 * @author Administrator
 *
 */
@Data
@HeadRowHeight(value = 20)
@ColumnWidth(value = 18)
@ExcelIgnoreUnannotated
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonIgnoreProperties(value = { "hibernateLazyInitializer", "handler", "fieldHandler" }, ignoreUnknown = false)
public class PoHeaderReportResponse {
	
    @ApiModelProperty(value = "主档ID")
    private Integer poHeaderId;

    @ApiModelProperty(value = "采购订单号")
    @ExcelProperty(value = "采购订单号")
    private String poNo;
    
    @ApiModelProperty(value = "状态")
    @ExcelProperty(value = "状态", converter = PoHeaderStatusConverter.class)
    private Integer status;

    @ApiModelProperty(value = "组织代码")
    @ExcelProperty(value = "组织代码")
    private String purchaseOrg;
    
    @ApiModelProperty(value = "成本中心")
    @ExcelProperty(value = "成本中心")
    private String costCenter;

    @ApiModelProperty(value = "制单时间")
    @ExcelProperty(value = "制单时间")
    @DateTimeFormat(value = "yyyy-MM-dd")
    private Date poCreateTime;

    @ApiModelProperty(value = "审核时间")
    @ExcelProperty(value = "审核时间")
    @DateTimeFormat(value = "yyyy-MM-dd")
    private Date approveTime;

    @ApiModelProperty(value = "最早交货日期")
    @ExcelProperty(value = "最早交货日期")
    @DateTimeFormat(value = "yyyy-MM-dd")
    private Date expectArriveTime1;
    
    @ApiModelProperty(value = "供应商编码")
    @ExcelProperty(value = "供应商编码")
    private String vendorCode;
    
    @ApiModelProperty(value = "供应商描述")
    @ExcelProperty(value = "供应商描述")
    private String vendorName;

    @ApiModelProperty(value = "制单人")
    @ExcelProperty(value = "制单人")
    private String createUser;
    
    @ApiModelProperty(value = "审核人")
    @ExcelProperty(value = "审核人")
    private String approveUser;
    
    @ApiModelProperty(value = "创建时间")
    @ExcelProperty(value = "创建时间")
    @DateTimeFormat(value = "yyyy-MM-dd")
    private Date createTime;
    
    @ApiModelProperty(value = "收货仓库")
    @ExcelProperty(value = "收货仓库")
    private String whsName;
    
    @ApiModelProperty(value = "交货地点")
    private String placeOfDelivery;
}